package com.duoec.magichour.service;

import com.duoec.magichour.dto.request.ArticleCommentSave;
import com.duoec.magichour.dto.response.ArticleCommentDto;
import com.duoec.magichour.pojo.ArticleComment;

import java.util.List;

/**
 * Created by ycoe on 17/6/27.
 */
public interface ArticleCommentService {
    /**
     * 获取某篇文章的评论
     * @param articleId 文章ID
     * @param pageNo   当前分页数，1为第一页
     * @param pageSize 每页最大记录数
     * @return
     */
    List<ArticleCommentDto> list(long articleId, int pageNo, int pageSize);

    /**
     * 添加评论
     *
     * @param articleId
     * @param articleCommentRequest 评论内容
     * @return 返回添加完成的评论内容
     */
    ArticleCommentDto save(long userId, long articleId, ArticleCommentSave articleCommentRequest);

    /**
     * 删除某个评论
     * @param articleId 文章ID
     * @param commentId 评论ID
     */
    void delete(long articleId, long commentId);

    /**
     * 判断某篇文章的某个评论是否存在
     * @param articleId 文章ID
     * @param commentId 评论ID
     * @return
     */
    boolean exists(long articleId, long commentId);

    /**
     * 获取评论
     * @param id 评论ID
     * @return
     */
    ArticleComment get(long id);
}
